Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра програмного забезпечення

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт
Предмет:
Інші
Група:
ПІ

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” КАФЕДРА ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ  Звіт До лабораторної роботи № 10 З дисципліни : "Конструювання програмного забезпечення" Варіант 3 Як відомо, у мові програмування С# існує 3 можливі передачі параметрів у функцію, для прикладу void DoSmthg1(ref x), void DoSmthg2(out x), void DoSmthg3(x). Визначити додаткові потреби пам’яті та швидкості для усіх трьох способів передачі параметрів. У процедурі DoSmthg обчислити нове значення змінної x. 1. Дані комп'ютера з параметрами на яких відбувалось порівняльне тестування швидкодії та потреб оперативної пам'яті : Процесор – Intel Quad-Core 2.4 Ghz, ОЗП 4 Гб , Операційна система: Windows 7 Ultimate x64. 2.Дані чисельних експериментів. Час виклику функцій з параметром який передається через ref 15 тис. раз, c Час виклику функцій з параметром який передається через out 15 тис. раз, c Час виклику функцій з параметром який передається , без ref і out 15 тис. раз, c ОЗП для функцій з параметром який передається через ref 15 тис. раз, cMB ОЗП для функцій з параметром який передається через out 15 тис. раз, cMB ОЗП для функцій з параметром який передається без ref і out 15 тис. раз, cMB  Експеримент №1 0.002 0.041 0.037 36.78 37.10 37.41  Експеримент №2 0.002 0.037 0.038 35.08 36.11 36.42  Експеримент №3 0.002 0.039 0.037 35.82 36.13 36.44  Експеримент №4 0.003 0.039 0.037 35.83 36.14 36.45  Експеримент №5 0.001 0.041 0.038 35.79 36.10 36.42  Виглад диспетчера задач після виконання програми:   3) Усереднені дані обчислювальних експериментів фукцій з параметром який передається через ref фукцій з параметром який передається через out функцій з параметром який передається , без ref і out  Середні потреби оперативної пам’яті, 15 тис викликів, MB 35.86 36.32 36.62  Середній час 15 тис викликів, с 0.002 0.039 0.037   Код програми: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace ConsoleApplication2 { class Program { static void Met1(ref int i, int f) { i = 300; if (f > 0) { --f; --i; Met1(ref i, f); } } static void Met2(out int i,int f) { i = 300; if (f > 0) { --f; --i; Met2(out i, f); } } static void Met3( int i, int f) { i = 300; //i++; if (f > 0) { --f; --i; Met3( i, f); } } static void Main() { int Z = 250; int f = 15000; int i=15000; int k = 0; DateTime Time1 = DateTime.Now; for (k = 0; k < Z; k++) Met1(ref k,f); DateTime Time2 = DateTime.Now; Console.WriteLine("Передаємо параметр через ref = {0}", Time2 - Time1); Process[] processlist = Process.GetProcessesByName("ConsoleApplication2.vshost"); Console.WriteLine(processlist[0].PagedMemorySize64 / 1024.0 / 1024.0); Time1 = DateTime.Now; for (k = 0; k < Z; k++) Met2(out i,f); Time2 = DateTime.Now; Console.WriteLine(" Передаємо параметр через out= {0}", Time2 - Time1); processlist = Process.GetProcessesByName("ConsoleApplication2.vshost"); Console.WriteLine(processlist[0].PagedMemorySize64 / 1024.0 / 1024.0); Time1 = DateTime.Now; for (k = 0; k < Z; k++) Met3( k,f); Time2 = DateTime.Now; Console.WriteLine(" Просто передаємо параметр= {0}", Time2 - Time1); Process[] processlist3 = Process.GetProcessesByName("ConsoleApplication2.vshost"); Console.WriteLine(processlist3[0].PagedMemorySize64 / 1024.0 / 1024.0); Console.ReadLine(); ...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини